Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add Welcome Email #224

Merged
merged 24 commits into from
Jan 7, 2025

Conversation

phoenixpereira
Copy link
Member

Description

Automatically send a welcome email when a user pays for membership.

Changes Made

  • Added a welcome email created using react email and tailwind
  • Used nodemailer to send the email
  • Automatically send the email when a user pays for membership (either by themselves or when a committee member marks them as paid)
  • Added welcomeEmailSent field in db to keep track of whether the welcome email for a given user has been sent yet
  • Updated packages
  • Use correct env var for sign up button

Related Issues

Fixes #223, closes #138, and contributes to #31.

Additional Notes

This PR is merging to the 2025 branch, which will be a temporary staging branch for upcoming PRs that will be merged for the start of 2025. This includes changing auth to Keycloak, updating db schema for notifications, email for member sign-up, and adding our code of contact and constitution to our join us page.

@phoenixpereira phoenixpereira added enhancement frontend backend dependencies Pull requests that update a dependency file labels Jan 4, 2025
@phoenixpereira phoenixpereira added this to the 2025 milestone Jan 4, 2025
@phoenixpereira phoenixpereira self-assigned this Jan 4, 2025
src/emails/body.tsx Outdated Show resolved Hide resolved
src/emails/body.tsx Outdated Show resolved Hide resolved
src/emails/body.tsx Outdated Show resolved Hide resolved
src/emails/body.tsx Outdated Show resolved Hide resolved
src/emails/body.tsx Outdated Show resolved Hide resolved
src/db/schema.ts Outdated Show resolved Hide resolved
src/db/schema.ts Outdated Show resolved Hide resolved
src/emails/links.ts Outdated Show resolved Hide resolved
src/server/send-welcome-email.ts Outdated Show resolved Hide resolved
@phoenixpereira phoenixpereira merged commit ef85a31 into compsci-adl:2025 Jan 7, 2025
3 checks passed
phoenixpereira added a commit to phoenixpereira/website that referenced this pull request Jan 8, 2025
phoenixpereira added a commit to phoenixpereira/website that referenced this pull request Jan 8, 2025
phoenixpereira added a commit that referenced this pull request Feb 4, 2025
* feat(auth): Switch to Keycloak (#217)

* feat(Auth): Add basic auth.js + Keycloak setup

* feat(auth): Make header work

* feat(db): Update db schema to make join flow work with Keycloak

* feat(auth): Get payment flow working

* feat(auth): Get admin panel working

* fix(auth): Use correct id

* feat(auth): Add sign out for mobile

* feat: Update join us page to use Keycloak

* feat(auth): Make join us flow work properly

* fix(settings): Show finish sign up box properly

* chore: Remove old forgot password page and unused schemas

* chore: Remove Clerk errors helper

* chore: Remove Clerk packages

* fix: Add md5 types, remove old Clerk styling, add name fields

* chore(ci): Update dockerfile, workflow, and env

* docs: Update Keycloak docs formatting and spelling

* chore: Address feedback

* chore: Remove unused route constants

* chore: Remove unused environment variables in workflow and dockerfile

* chore: Address feedback

* chore: Update membership product name for 2025

* chore(ci): Enable PR workflow for 2025 branch

* chore(ci): Enable PR workflow for 2025 branch

* chore(ci): Revert enable PR workflow for 2025 branch

* chore(ci): Enable PR workflow for 2025 branch (#219)

* chore(ci): Change trigger from pull_request_target to pull_request

* chore: Downgrade eslint version to fix compatibility issues

* fix: Add fallback db url and mock redis client

* feat: Add Welcome Email (#224)

* feat: Add foundations for notifications (#226)

* feat: Add Uni Code of Conduct and Club Constitution links (#228)

* chore(footer): Update copyright year to current dynamically

* feat(notifications): Refactor notification categories to use dynamic names

* feat(join): Update agree to terms step to include links to University Code of Conduct and club Constitution

* feat(about): Add link to club Constitution in About page

* refactor(field): Set field label string to lowercase at start

* chore(auth): Use Keycloak realm role instead of client role to determine committee access (#229)

* docs(keycloak): Improve Keycloak setup documentation (#230)

* chore(ci): Update .env.local.example and streamline env vars in production workflow (#231)

* chore(env): Update .env.local.example to include auth and email env vars

* chore(ci): Refactor production workflow to streamline env var handling
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend dependencies Pull requests that update a dependency file enhancement frontend
Projects
Status: In Progress
Development

Successfully merging this pull request may close these issues.

4 participants